The present invention relates to communications networks, in particular, though not exclusively to planning of multi-service connections in a hierarchical broadband network.
Broadband communications networks must deliver a variety of services, often in combination, over transport and access networks which differ geographically in their capabilities and quality of service parameters. Also, communications data is often subject to various forms of transformation, such as compression and translation, as part of its carriage between parties involved.
Broadband networks are likely to be heterogeneous for quite some time in the future, in terms of the connectivity types winch they offer and the available service gateways. There is therefore a problem when provisioning a service in matching the needs of an end user to the facilities which are available within a service provider.
Planning connections in hierarchical broadband communications networks involves similar planning a route of links and/or nodes in a simple network. However, due to the existence of the hierarchy in the broadband communications network, the routing problem can give rise to a hierarchy of routing sub-problems. A classical routing algorithm (eg Dijkstra""s) could be applied to find a route between two nodes. However, the same routing problem could be applied recursively to sub-problems arising in the hierarchical network, but if a sub-problem has no solution then a higher level route must be modified.
Another complication in a heterogenous broadband network is the differing natures of links between nodes, for example a link between two nodes may only be capable of transferring a certain type of data between the two nodes. Traffic carrying and/or transport characteristics of such nodes constitute xe2x80x9cbehaviorsxe2x80x9d of the nodes. Therefore, a corresponding hierarchy of behavior rules need to be found to describe the traffic carrying transport characteristics of individual links and/or nodes in addition to the route of links and/or nodes itself in order to fully plan a connection which provisions a service to the end user.
In U.S. Pat No. 4,999,833 (Lee), there is described a system which applies a set of heuristic rules to a knowledge base to select connectivity paths through a network. However, the connectivity paths are selected from a routing sequence based upon a simple list of communications links and so is not capable of dealing with transformation of communications data as part of its carriage over the network. Furthermore, the system relates to radio networks only rather than heterogeneous networks and so does not overcome the problems associated with planning multi-service connections over transport and access networks which differ geographically in their capabilities and quality of service parameters.
A novel approach outlined herein supports the creation and management of broadband service connections in an integrated manner, using a combination of structured modeling and goal-based route finding.
According to a first aspect of the present invention, there is provided in a network comprising a plurality of nodes and links, each said node having at least one end point connecting it to a said link element, each said link between said end points having a type, a method of producing a connection plan representing at least one connection between said end points in said network, said connection plan comprising data describing a set of said end points and said types of said links between the end points said method comprising the steps of:
creating a data representation of at least part of said network;
creating a data representation of end points of said connection; and
applying an algorithm to said data representations to generate said connection plan.
Preferably, a said representation comprises a list of at least one clause, each said clause comprising at least one term.
Said clauses may comprise assertions and implications.
Preferably, said algorithm operates to select a said term of a said clause representing said connection as a sub-goal and recursively attempts to solve said sub-goal.
A said sub-goal may be assigned a priority, and said algorithm selects a said sub-goal with a highest said priority.
A said algorithm may select a said sub-goal which is a clause with fewest said terms.
Said algorithm may select a said sub-goal according to order of its said terms.
Said algorithm may select a sub-goal with a lowest position in said network hierarchy.
Said algorithm may select said sub-goal randomly.
Said algorithm may select a said clause with which to solve said sub-goal according to position of said clause in said list of clauses.
Said algorithm may select a said clause with which to solve said sub-goal by selecting a said clause having a term included in said connection plan.
Said algorithm may select a said clause with which to solve said sub-goal by selecting a clause which is lowest in said network hierarchy.
Said algorithm may select a said clause with which to solve said sub-goal by selecting a clause with a term having smallest capacity.
Said algorithm may randomly select a clause with which to solve said sub-goal.
Preferably, said clauses represent data describing features of said network, said features selected from the set:
classes of said network nodes;
end points of said network nodes;
links of said network;
schematic representations of said link types.
A said link typemay be selected from the set:
binding;
realization;
behavior;
containment.
A graphical representation of said connection plan may be described.
Said connection plan is preferably implemented as a set of connections in said network.
Said representation may comprise a substantially Prolog-like syntax.
According to a second aspect of the present invention there is provided in a network comprising a plurality of nodes and links, each said node having at least one end point connecting it to a said link element, each said link between said end points having a type, connection planning apparatus for planning at least one connection between said end points in said network by creating a connection plan comprising a set of said end points and said type of said link between the end point said connection planning apparatus comprising:
means of creating a representation of at least part of said network;
means of creating a representation of end points of said connection; and
an inference engine which uses said representation to generate said connection plan.
Said representation may comprise a list of at least one clause, each said use comprising at least one term.
Said clauses may comprise horn clauses.
Said inference engine may select a said term of a said clause representing said connection as a sub-goal and recursively attempts to solve said sub-goal.
A said sub-goal may be assigned a priority, and said inference engine elects a said sub-goal with a highest said priority.
Said inference engine may select a said sub-goal which is a clause with aid fewest said terms.
Said inference engine may select a sub-goal according to order of its said terms.
Said inference engine selects said sub-goal with a lowest position in said network hierarchy.
Said inference engine may select said sub-goal randomly.
Said inference engine may select a said clause with which to solve said sub-goal according to position of said clause in said list of clauses.
Said inference engine may select a said clause with which to solve said sub-goal by selecting said clause having a term included in said connection plan.
Said inference engine may select a said clause with which to solve said sub-goal by selecting a clause which is lowest in said network hierarchy.
Said inference engine may select a said clause with which to solve sub-goal by selecting a clause with a term having smallest capacity.
Said inference engine may randomly select a clause with which to solve said sub-goal.
Said clauses may represent data describing features of said network, said features selected from the set:
classes of said network nodes; end points of said network nodes;
links of said network;
schematic representation of link types.
A said link type suitably selected from the set:
binding;
realization;
behavior;
containment.
Preferably, the connection planning apparatus further comprising means for displaying a graphical representation of said connection plan.
Said connection planning apparatus means may comprise means for implementing said connection plan as a set of connections in said network.
According to a third aspect of the present invention, there is provided a syntactical representation for describing capabilities and links in a hierarchical network, said syntactical representation comprising a list of at least one clause.
Said capability representation preferably comprises:
a node identifier;
an input data type;
an output data type; and
a hierarchical network layer upon which said node appears.
Said link representation preferably comprises:
at least two nodes representing end points of said links; and
a hierarchical network layer upon which said link appears.
Said representation may comprise a substantially Prolog-like syntax.
According to a fourth aspect of the present invention there is provides an inference engine for solving connection problems in a hierarchical network comprising:
a logic component comprising a specification of what it means to solve said problem; and
a control component comprising a description of how said logic component is to be executed.
Said control component preferably comprises:
a computation rule for selecting sub-goals with which to solve said problems; and
a selection rule for selecting clauses with which to solve aid selected sub-goals.
An inference engine may execute said logic component by applying techniques selected from the set:
hierarchical planning;
hill-climbing;
first fail.
According to a further aspect of the present invention there is provided a network management apparatus for a communications network comprising a plurality of interconnected network element devices, said network management apparatus comprising:
a plurality of device controllers each controlling at least one corresponding network element device, said plurality of device controllers comprising a plurality of device sub-controllers,
wherein a plurality of functions performed by a network element device are each represented by a corresponding respective said device sub-controller; and
said plurality of device controllers may be arranged in a manner which represents an arrangement of a service provided by said network element devices.
Preferably each said device sub-controller comprises: a data storage means storing data describing a function of a network element device; and a means for generating management control signals for controlling a said network element device. The device sub-controller preferably comprises an object data representation.
Preferably a set of connections between said device controllers are provided, said connections arranged in a manner which represents service connections between said network element devices.
This invention includes in a network management apparatus, a method of controlling a network comprising a plurality of network element devices each supporting a plurality of services implemented by functions of the network element devices, said method comprising the steps of:
representing each said function supported by a network element device by a corresponding respective device sub-controller by;
at each said sub-controller storing data signals representing a said function capability of said network element device; and
operating said sub-controllers to generate a plurality of management control signals for controlling said network element device to provide said functionality in supporting said services.
The invention includes in a network management apparatus, a method of controlling a network comprising a plurality of network element devices each supporting a plurality of service functions, said method comprising the steps of:
representing each network element device by a corresponding device controller;
for each device controller, representing each function capability provided by a said corresponding network element device by a corresponding device sub-controller; and
linking a plurality of said sub-controllers of different device controllers in a manner which represents a service connection supported by said network element devices.
The invention includes a method of constructing a management apparatus for a communications network comprising a plurality of node element devices, said method comprising the steps of:
representing a plurality of network element devices of the network by a corresponding plurality of function models, wherein each function model comprises a plurality of specifications of functionality of a said corresponding network element device; and
implementing said function models as a plurality of device controllers each controlling a corresponding respective said network element device, wherein each said device controller comprises a plurality of device sub-controllers each device sub-controller corresponding to a service function provided by a network element device controlled by said device controller.
Preferably each said device sub-controller comprises: a data storage medium for storing a set of data signals describing a functionality of a network element device; and a control signal generating means for generating control signals for controlling a function of said network element device.
The invention includes in a communications network comprising a plurality of inter-connected nodes, each node providing a plurality of services, a method of planning a service between a source node and at least one destination node comprising the steps of:
storing data representing connections between said nodes;
storing data representing services provided by said nodes;
finding data representing a set of connections and services between said source and destination nodes which implement said service; and
transforming said data representing a set of connections and services for application within a network controller.
A said service provided by a node may comprise transforming a first service type to a second service type.
Said data representing connections may comprise a name of a first node, a name of a second node and a name of a layer within which said nodes are contained.
Said data representing services may comprise a name of a node, a name of a first service type provided by said node and a name of a second service type provided by said node.
Said data transformed for application within a network controller may comprise an aggregated connection between said network nodes for implementing a said service.
The invention includes in a communications network comprising a plurality of inter-connected nodes, said nodes supporting at least one service function, a method of planning a connection supporting said service, said method comprising the steps of:
translating function capabilities of said nodes and connections between said nodes into a plurality of syntax constructs;
taking each said syntax construct as an operator in a planning system to obtain a connection plan solution; and
transforming said connection plan solution into a connection model suitable for application within a network manager apparatus.
A said syntactical operator may comprise connection operator.
A said syntactical operator may comprise a transform operator representing a said function capability of a said node.
A said service may be represented in terms of a layered structure.
Said connection plan solution is preferably obtained using an artificial intelligence technique.
A said connection may comprise a multi-media service connection.